﻿namespace PhysicalExamination5.WebApi.Utility.Version
{
    /// <summary>
    /// 配置API支持版本
    /// </summary>
    public static class VersionExtension
    {
        /// <summary>
        /// 配置CoreAPI文档
        /// </summary>
        /// <param name="builder"></param>
        public static void ApiVersionExt(this WebApplicationBuilder builder)
        {
            //添加API版本支持
            builder.Services.AddApiVersioning(option =>
            {
                //是否在响应的header信息中返回API版本信息
                option.ReportApiVersions = true;
                //默认的API版本
                option.DefaultApiVersion = new Microsoft.AspNetCore.Mvc.ApiVersion(1, 0);
                //未指定API版本时,设置API版本为默认版本
                option.AssumeDefaultVersionWhenUnspecified = true;
            });

            //配置API版本信息
            builder.Services.AddVersionedApiExplorer(option =>
            {
                //api版本分组名称
                option.GroupNameFormat = "'v'VVVV";
                //未指定API版本时 设置 API版本为默认版本
                option.AssumeDefaultVersionWhenUnspecified = true;
            });
        }
    }
}
